@echo off
REM MailServer Windows 编译脚本

echo 开始编译 MailServer...

REM 检查 protoc 是否安装
where protoc >nul 2>nul
if %errorlevel% neq 0 (
    echo 错误: 未找到 protoc 命令
    echo 请先安装 Protocol Buffers
    echo 下载地址: https://github.com/protocolbuffers/protobuf/releases
    exit /b 1
)

REM 生成 protobuf 文件
echo 生成 Protocol Buffers 文件...
cd proto
if exist protoc.sh (
    bash protoc.sh
) else if exist protoc.bat (
    call protoc.bat
) else (
    protoc --cpp_out=../generated *.proto
)
cd ..

REM 编译
echo 编译 MailServer...
g++ mail_server.cpp protorpc.c generated/*.cc ^
    -I include/hv ^
    -I include/hiredis ^
    -lhv ^
    -lprotobuf ^
    -lhiredis ^
    -lpthread ^
    -o mail.exe

if %errorlevel% equ 0 (
    echo 编译成功！
    echo 可执行文件: mail.exe
    echo.
    echo 运行方法:
    echo   mail.exe ^<端口号^>
    echo   例如: mail.exe 1234
) else (
    echo 编译失败！
    echo 请检查依赖库是否正确安装
    exit /b 1
)

